package com.ruoyi.system.service;
import com.ruoyi.system.domain.vo.InspectionPlanTaskCountVO;
import com.ruoyi.system.domain.vo.InspectionPlanTaskVO;
import com.ruoyi.system.entity.InspectionPlanTask;
import java.util.List;
import java.util.Map;

/**
 * 计划任务表(InspectionPlanTask)表服务接口
 * @since 2022-11-28 17:55:24
 */
public interface InspectionPlanTaskService {

    /**
     * 通过ID查询单条数据
     *
     * @param id 主键
     * @return 实例对象
     */
    InspectionPlanTask queryById(Integer id);

    /**
     * 分页查询
     *
     * @param inspectionPlanTask 筛选条件
     * @return 查询结果
     */
    List<InspectionPlanTask> queryByPage(InspectionPlanTask inspectionPlanTask);

    /**
     * 新增数据
     *
     * @param inspectionPlanTask 实例对象
     * @return 实例对象
     */
    InspectionPlanTask insert(InspectionPlanTask inspectionPlanTask);

    /**
     * 修改数据
     *
     * @param inspectionPlanTask 实例对象
     * @return 实例对象
     */
    InspectionPlanTask update(InspectionPlanTask inspectionPlanTask);

    /**
     * 通过主键删除数据
     *
     * @param id 主键
     * @return 是否成功
     */
    boolean deleteById(Integer id);

    InspectionPlanTask queryByPlanId(Integer id);

    List<InspectionPlanTaskVO> getCountAll(Integer id);

    void updateStateByRouteId(Integer id);
    int getZCxj();
    int getCSxj();

    int getZgCount();

    int getPcCount();

    int getWclCount();

    int getBflCount();

    int getCountRouteTo(String name);

    List<InspectionPlanTaskCountVO>getAllRouteTo();

    List<InspectionPlanTask> getAllCountTimeTo(String startTime, String endTime);

    List<InspectionPlanTaskCountVO> getAllTypeCount();

    int getWwcCount();

    int getYwcCount();

    int getYcsCount();

    List<InspectionPlanTaskCountVO> getTypeNameCount(String name);

    List<InspectionPlanTaskCountVO> getAllDangerList();

    List<InspectionPlanTaskCountVO> getCountArea();

    List<InspectionPlanTaskCountVO> getCountDept();

    Map<String, Object> countSize();
}
